import service from '@/utils/request';

const AuthApi = {
  // ---------------------------------user api------------------------------------
  editUser(data) {
    // 修改用户
    return service.put('user/update', data);
  },
  listUser(data) {
    // 系统管理 - 人员列表
    return service.get('user/page', { params: data });
  },
  getUserInfo(data) {
    // 系统管理 - 人员信息
    return service.get('user', { params: data });
  },
  deleteUser(data) {
    // 删除用户
    return service.put('user/updateState', data);
  },
  updateUserState(data) {
    // 修改用户状态-禁用、启用、删除
    return service.put('user/updateState', data);
  },
  updateUserPwd(data) {
    // 修改用户密码
    return service.put('user/updatePassword', data);
  },
  resetUserPwd(data) {
    // 重置用户密码
    return service.put('user/rePassword', data);
  },

  // ---------------------------------admin api------------------------------------

  listAdmin(data) {
    // 管理员列表
    return service.get('admin/page', { params: data });
  },
  getAdmin(data) {
    // 查询管理员
    return service.get('admin', { params: data });
  },
  addAdmin(data) {
    // 新增管理员
    return service.post('admin', data);
  },
  updateAdmin(data) {
    // 修改管理员
    return service.put('admin', data);
  },
  getUserMenuList(data) {
    // 用户关联的菜单列表查询
    // eslint-disable-next-line standard/object-curly-even-spacing
    return service.get('admin/menu', { params: data });
  },
  getUserRoleList(data) {
    // 用户关联的角色列表查询
    return service.get('admin/roles', { params: data });
  },
  addUserRoleList(data) {
    // 用户新增关联的角色列表查询
    return service.post('admin/roles', data);
  },
  listAdminByRole(data) {
    // 获取-管理员
    return service.get('admin/listAdminSelectByRoleId', { params: data });
  },
  listIdNameAdmin(data) {
    return service.get('admin/listIdName', { params: data });
  },
  uploadSignUrl(data) {
    // 上传电子签名
    return service.put('admin/signUrl', data);
  },
  listVillage(data) {
    return service.get('admin/listVillage', { params: data });
  },
  setVillage(data) {
    return service.put('admin/setVillage', data);
  },

  // ---------------------------------menu api------------------------------------

  addMenu: function (data) {
    return service.post('menu', data);
  },
  listMenu(data) {
    return service.get('menu/page', { params: data });
  },
  listMenuTreeTable(data) {
    return service.get('menu/menuTreeTable', { params: data });
  },
  updateMenuState(data) {
    return service.put('menu/state', data);
  },
  editMenu(data) {
    return service.put('menu', data);
  },
  getMenuInfo(data) {
    return service.get('menu/index', { params: data });
  },
  getListMenuByRole(data) {
    return service.get('menu/listMenuByRole', { params: data });
  },

  // ---------------------------------role api------------------------------------

  addRole(data) {
    // 新增角色
    return service.post('role', data);
  },
  editRole(data) {
    // 修改角色
    return service.put('role', data);
  },
  deleteRole(data) {
    // 删除角色
    return service.put('role/delete', data);
  },
  getRoleInfo(data) {
    // 角色信息
    return service.get('role/index', { params: data });
  },
  listRole(data) {
    // 查询角色分页
    return service.get('role/page', { params: data });
  },
  listRoleMenus(data) {
    // 查询某角色下的菜单列表
    return service.get('role/menus', { params: data });
  },
  updateRoleMenus(data) {
    // 修改/新增某角色关联的菜单
    return service.post('role/menus', data);
  },
  getListUserByRoleId(data) {
    // 通过角色Id来获取该角色的用户列表
    return service.get('role/listUserByRoleId', { params: data });
  },
  deleteUserRole(data) {
    // 删除角色下某一个用户
    return service.put('role/deleteRelation', data);
  },
  bigScreenList(data) {
    return service.get('api/bigScreen/listIdName', { params: data });
  },
};

export default AuthApi;
